package com.yuanjing.xiangqinxiangai.model

data class RoomInfo(
    val accumulatePeople: Int,
    val addHostUserFans: Int,
    val autoClose: Int,
    val autoCloseInterval: Int,
    val autoShangMai: Int,
    val changed: Int,
    val coverUserId: Int,
    val createTime: String,
    val deleteFlag: Int,
    val endTime: String,
    val firstMsg: String,
    val hideRoom: Int,
    val id: Int,
    val selfUserId: Int?,
    val minutes: Int,
    val musicJumpTokens: Int,
    val musicPropId: Int,
    val name: String,
    val onlineCount: Int,
    val receiveTokens: Int,
    val roomCover: String,
    val roomMais: List<RoomMai>,
    val roomType: Int,
    val tokens: Int,
    val toppingMaiIndex: Int,
    val userId: Int,
    val userRoomVO: UserRoomVO
) {
    data class RoomMai(
        val avatar: String,
        val deleteFlag: Int,
        val id: Int,
        val inputStreamId: String,
        val liveMinutes: Int,
        val maiIndex: Int,
        val maiOpen: Int,
        val musicVO: MusicVO,
        val mysteryMan: Int,
        val nick: String,
        val outputStreamId: String,
        val receiveTokens: Int,
        val roomAnchorStickersList: List<RoomAnchorStickers>,
        val roomId: Int,
        val sex: Int,
        val shangMaiTime: String,
        val soundMai: Int,
        val status: Int,
        val userId: Int,
        val xiaMaiTime: String
    ) {
        data class MusicVO(
            val avatar: String,
            val createTime: String,
            val musicName: String,
            val musicSerialNumber: String,
            val musicStatus: Int,
            val nick: String,
            val pointAvatar: String,
            val pointNick: String,
            val pointUserId: Int,
            val userId: Int
        )

        data class RoomAnchorStickers(
            val count: Int,
            val lastTime: String,
            val propId: Int
        )
    }

    data class UserRoomVO(
        val age: Int,
        val avatar: String,
        val avatarFrameUrl: String,
        val beautifulCodeUrl: String,
        val chatFrameUrl: String,
        val mysteryMan: Int,
        val nick: String,
        val prohibition: Int,
        val province: String,
        val sex: Int,
        val userCode: String,
        val userId: Int,
        val userLabels: List<UserLabel>,
        val vipGrade: Int
    ) {
        data class UserLabel(
            val anchorUserId: Int,
            val labelName: String,
            val labelType: Int,
            val url: String
        )
    }
}